#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <errno.h>
int main(int argc, const char *argv[])
{
    // 第一个参数：如果不写路径默认的是当前路径下的文件
    // 第二个参数：打开文件的方式
    // 以只读的形式打开文件，如果文件不存在则创建新文件
    // 一旦创建新文件，需要使用open函数的第三个参数，默认权限0666
    // 如果文件不存在则创建文件，如果文件存在则报错
    int fd = 0;//文件描述符，从3开始
    if((fd = open("text.c", O_RDONLY | O_CREAT | O_EXCL, 0666)) == -1)
    {
        //如果文件打开失败，则错误码会被重新的设置
        if(errno == EEXIST)
        {
            printf("文件已存在\n");
        }
        perror("文件打开失败"); 
        return -1;
    }
    printf("文件打开成功\n");
    printf("文件描述符为:%d\n",fd);
    //后续使用open函数的时候要关闭文件（关闭文件描述符）
    return 0;
}